<template>
  <div>
    <p>请选择你要购买的书籍</p>
    <ul>
        <li v-for="(item,index) in arr" :key="index">
            <span> {{item.name}} </span>
            <button @click="buy(index)">买书</button>
        </li>
    </ul>
    <table border="1px" width="500" cellspacing="0">
      <tr>
        <th>序号</th>
        <th>书名</th>
        <th>单价</th>
        <th>数量</th>
        <th>合计</th>
      </tr>
      <tr v-for="(item,index) in arr" :key="index">
          <td> {{index+1}} </td>
          <td>{{item.name}}</td>
          <td>{{item.price}}</td>
          <td>{{item.count}}</td>
          <td>{{item.price*item.count}}</td>
      </tr>
    </table>
    <p>总价格为: {{total}} </p>
  </div>
</template>

<script>
    /*
        需求1：将arr中的数据通过v-for渲染至页面
            1.1 在ul中手写一个li,li中有一个span一个button
            1.2 在table中新建tbody(tr+td)

        需求2：li中的button绑定点击事件-->处理函数的实参传递索引
            2.1 根据传递的索引找到对应tr
            2.2 修改对应tr中的数据-->数量、合计

        需求3：计算总价-->遍历arr,将累加后的数字totalSum返回出去

    */ 
export default {
  data() {
    return {
      arr: [
        {
          name: "水浒传",
          price: 107,
          count: 0,
        },
        {
          name: "西游记",
          price: 192,
          count: 0,
        },
        {
          name: "三国演义",
          price: 219,
          count: 0,
        },
        {
          name: "红楼梦",
          price: 178,
          count: 0,
        },
      ],
    };
  },
  methods:{
      buy(index){
        //   console.log(index)
        this.arr[index].count++
      }
  },
  computed:{
      total(){
          let totalSum=0
          this.arr.forEach(item=>{
              totalSum+=item.price*item.count
          })
          return totalSum
      }
  }
};
</script>